package marketplace_server;

import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.ArrayList;
import marketplace_client.Client;

public interface Server extends Remote {
    
    public void register(Client client, String username, String password) throws RemoteException;
    public boolean logIn(Client client, String username, String password) throws RemoteException;
    public void unregister (Client client) throws RemoteException;
    
    //public void buyItem(Client client, String itemName,float price,String sellerID) throws RemoteException;
    public void buyItem(Client client, String itemName) throws RemoteException;
    public void publishItemOnMarket(Client client, Item item) throws RemoteException;
    public void showInterestForPriceRange(Client client, Item item, Integer priceRange) throws RemoteException;
    //public void updatePriceOnItem(Client client, String itemName, Integer newPrice) throws RemoteException;
    
    public void updateItem(Client client, Item item) throws RemoteException;
    
    public void listCurrentlyAvailableItems (Client client) throws RemoteException;
    //public void broadcastUpdates () throws RemoteException;

    
    
}